module easytext.cli {
    requires easytext.analysis.api;
    requires easytext.fleschKincaid;

    /**
     * uses 子句告知 Serviceloader 该模块想要消费 Analyzer 的实现 ，然后 ServiceLoader 使 Analyzer 实例可用于模块
     * uses 子句无法保证在运行时存在提供者
     *
     * 在Analyzer接口中实现
     * static Iterable<Analyzer> getAnalyzers() {
     *     return ServiceLoader.load(Analyzer.class);
     * }
     * 不需要使用uses,消费者获取Analyzer接口实现时，直接调用getAnalyzers()方法就行。
     * 但在Analyzer模块中的module-info中需要添加uses com.zengdw.easytext.api.Analyzer;
     */
    uses com.zengdw.easytext.api.Analyzer;
}